package com.noahplat.datapro.feign;

import com.noahplat.common.utils.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.Pattern;
import java.util.List;

/**
 * @InterfaceName: DataProFeign
 * @Description: 可穿戴设备数据对外提供feign
 * @Author 李景星
 * @Date 2021/3/5
 * @Version 1.0
 */
@FeignClient(name = "datapro")
public interface DataProFeign {

    /**
     * 批量查询实时数据,单个查询时只传单个数据
     * @param imeis
     * @param types
     * @return
     */
    @GetMapping("/api/datapro/getReal")
    public Result getReal(@NotEmpty(message = "设备号不能为空") @RequestParam("imeis") String[] imeis,
                          @NotEmpty(message = "查询类型不能为空") @RequestParam("types") String[] types);


    /**
     * 按时间获取历史数据
     * @param imei 设备号
     * @param type 查询类型
     * @param date 指定日期 格式 yyyy-MM-dd
     * @return
     */
    @GetMapping("/api/datapro/getHis")
    public Result getHis(@NotEmpty(message = "设备号不能为空") @RequestParam("imei") String imei,
                         @NotEmpty(message = "查询类型不能为空") @RequestParam("type") String type,
                         @NotEmpty(message = "查询日期不能为空") @Pattern(regexp = "[0-9]{4}-[0-9]{2}-[0-9]{2}", message = "上传日期格式不合法")@RequestParam("date") String date);


}
